Skip to main content
Minh Nong
💬
0 discussions

[API] third-party-service

Tài liệu này nhằm mục đích quản lý số lượng và chức năng của endpoints trong command-service. Người đọc có thể dựa vào tên của files và tên endpoints để dễ dàng kiểm tra thông tin apis source code.

API Endpoints

Response

  • 200: Success
  • 403: Forbidden
  • 400: Bad Request

Auth

  • Auth Type : Bearer Token

click-to-call.js

Create Click-to-Call

  • Route: /callcenter/:callcenter_id/clicktocall
  • Method: POST
  • Param: callcenter_id
  • Body: header, content, color, position, delay
  • Return Format:
    • Success : 200 { success: true, result: result }
    • Failure : 400 { success: false, error: { message: error } }

Get Click-to-Call

  • Route: /callcenter/:callcenter_id/clicktocall
  • Method: GET
  • Param: callcenter_id
  • Return Format:
    • Success : 200 { success: true, result: result }
    • Failure : 400 { success: false, error: { message: error }}

Update Click-to-Call

  • Route: /callcenter/:callcenter_id/clicktocall/:clicktocall_id
  • Method: PUT
  • Param: clicktocall_id
  • Body: length, _id, createdAt, updatedAt, delay, activated, deleted
  • Return Format:
    • Success : 200 { success: true }
    • Failure : 400 { success: false, error: { message: error } }

Delete Click-to-Call

  • Route: /callcenter/:callcenter_id/clicktocall/:clicktocall_id
  • Method: DELETE
  • Param: clicktocall_id
  • Return Format:
    • Success : 200 { success: true }
    • Failure : 400 { success: false, error: { message: error } }

Get Click-to-Call by ID

  • Route: /clicktocall/:clicktocall_id
  • Method: GET
  • Param: clicktocall_id
  • Return Format:
    • Success: 200 { success: true, result: result }
    • Failure: 400 { success: false, error: { message: error } }

Get All Click-to-Calls

  • Route: /clicktocalls
  • Method: GET
  • Return Format:
    • Success: 200 { success: true, result: result }
    • Failure: 400 { success: false, error: { message: error } }

endpoint.js

Create Endpoint

  • Route: /endpoint

  • Method: POST

  • Query: versionSchema

  • Body: parameters

  • Return Format:

    • Success: 200 { success: true, result: Object.assign(result, {template_name: template.name})}
    • Failure: 400 { success: false, error: { message: error } }

Get An Endpoint by ID

  • Route: /endpoint/:id
  • Method: GET
  • Param: id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Update An Endpoint by ID

  • Route: /endpoint/:id

  • Method: PUT

  • Param: id

  • Query: versionSchema

  • Body: parameters

  • Return Format:

    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Delete An Endpoint by ID

  • Route: /endpoint/:id

  • Method: DELETE

  • Param: id

  • Query: versionSchema

  • Return Format:

    • Success : 200 { success: true }
    • Failure : 400 { success: false, error: { message: error } }

Get Endpoint by Name

  • Route: /endpoint/name/:endpoint_name
  • Method: GET
  • Param: endpoint_name
  • Return Format:
    • Success: 200{ success: true, result: result[0]}
    • Failure: 400 { success: false, error: { message: error } }

Get Endpoint by Template Name and Endpoint Name

  • Route: /template/:template_name/endpoint/:endpoint_name
  • Method: GET
  • Param: template_name, endpoint_name
  • Return Format:
    • Success: 200 { success: true, result: result[0] }
    • Failure: 400 { success: false, error: { message: error } }

Get All Endpoints

  • Route: /endpoints
  • Method: GET
  • Query: filter, limit, skip
  • Return Format:
    • Success: 200 {success: true, result: endpoints, count}
    • Failure: 400 { success: false, error: { message: error } }

fpt.js

Create FPT

  • Route: /callcenter/:callcenter_id/fpt
  • Method: POST
  • Param: callcenter_id
  • Body: req.body
  • Return Format:
    • Success : 200{ success: true, result }
    • Failure: { success: false, error: { message: error } }

Get FPT

  • Route: /callcenter/:callcenter_id/fpt
  • Method: GET
  • Param: callcenter_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure: { success: false, error: { message: error } }

Get FPT by ID

  • Route: /fpt/:fpt_id
  • Method: GET
  • Param: fpt_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Update FPT by ID

  • Route: /fpt/:fpt_id
  • Method: PUT
  • Param: fpt_id
  • Body: _id, createdAt, updatedAt, deleted
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Delete FPT by ID

  • Route: /fpt/:fpt_id
  • Method: DELETE
  • Param: fpt_id
  • Return Format:
    • Success : 200 { "success": true, "result": {} }
    • Failure : 400 { success: false, error: { message: error } }

Get All FPTs

  • Route: /fpts
  • Method: GET
  • Query: req.query
  • Return Format:
    • Success: { success: true, result }
    • Failure: { success: false, error: { message: error } }

hubpot.js

Create HubSpot

  • Route: /callcenter/:callcenter_id/hubspot

  • Method: POST

  • Body: req.body

  • Param: callcenter_id

  • Return Format:

    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get HubSpot

  • Route: /callcenter/:callcenter_id/hubspot
  • Method: GET
  • Param: callcenter_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get HubSpot by ID

  • Route: /hubspot/:hubspot_id
  • Method: GET
  • Param: hubspot_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure: { success: false, error: { message: error } }

Update HubSpot by ID

  • Route: /hubspot/:hubspot_id
  • Method: PUT
  • Param: hubspot_id
  • Body: _id, createdAt, updatedAt, deleted
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Delete HubSpot by ID

  • Route: /hubspot/:hubspot_id
  • Method: DELETE
  • Param: hubspot_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get All HubSpots

  • Route: /hubspots
  • Method: GET
  • Return Format:
    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

integrator.js

Post Integrator

  • Route: /callcenter/:callcenter_id/integrator
  • Method: POST
  • Query: versionSchema
  • Param: callcenter_id
  • Body: idTemplate,
  • Return Format:
    • Success: 200 { success: true, result: Object.assign(result, {template_name: template.name, endpoint_name: endpoint.name})}
    • Failure: 400 { success: false, error: { message: error } }

Get all Integrator

  • Route: /callcenter/:callcenter_id/integrator
  • Method: GET
  • Param: callcenter_id
  • Return Format:
    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

Get Integrator by Id

  • Route: /integrator/:integrator_id

  • Method: GET

  • Param: integrator_id

  • Return Format:

    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

    Update Integrator by Id

  • Route: /integrator/:integrator_id

  • Method: PUT

  • Param: integrator_id

  • Query: versionSchema

  • Body: _id, createdAt, updatedAt, deleted

  • Return Format:

    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

Delete Integrator by Id

  • Route: /integrator/:integrator_id
  • Method: PUT
  • Param: integrator_id
  • Query: versionSchema
  • Return Format:
    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

GET Integrators

  • Route: /integrators/
  • Method: GET
  • Param: integrator_id
  • Query: filter
  • Return Format:
    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

mio.js

Create Mio

  • Route: /callcenter/:callcenter_id/mio
  • Method: POST
  • Param: callcenter_id
  • Body: req.body
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Mio in Callcenter

  • Route: /callcenter/:callcenter_id/mio
  • Method: GET
  • Param: callcenter_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Mio by ID

  • Route: /mio/:mio_id
  • Method: GET
  • Param: mio_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Update Mio by ID

  • Route: /mio/:mio_id
  • Method: PUT
  • Param: mio_id
  • Body: _id, createdAt, updatedAt, deleted
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Delete Mio by ID

  • Route: /mio/:mio_id
  • Method: DELETE
  • Param: mio_id
  • Return Format:
    • Success : { success: true, result }
    • Failure : { success: false, error: { message: error } }

Get All Mios

  • Route: /mios
  • Method: GET
  • Return Format:
    • Success: { success: true, result }
    • Failure: { success: false, error: { message: error } }

nexmo.js

Create Nexmo

  • Route: /callcenter/:callcenter_id/nexmo
  • Method: POST
  • Param: callcenter_id
  • Body: req.body
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Nexmo

  • Route: /callcenter/:callcenter_id/nexmo
  • Method: GET
  • Param: callcenter_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Nexmo by ID

  • Route: /nexmo/:nexmo_id
  • Method: GET
  • Param: nexmo_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Update Nexmo by ID

  • Route: /nexmo/:nexmo_id
  • Method: PUT
  • Param: nexmo_id
  • Body: _id, createdAt, updatedAt, deleted
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Delete Nexmo by ID

  • Route: /nexmo/:nexmo_id
  • Method: DELETE
  • Param: nexmo_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get All Nexmos

  • Route: /nexmos
  • Method: GET
  • Return Format:
    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

nhanh.js

Create Nhanh

  • Route: /callcenter/:callcenter_id/nhanh
  • Method: POST
  • Param: callcenter_id
  • Body: req.body
  • Return Format:
    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

Get Nhanh

  • Route: /callcenter/:callcenter_id/nhanh
  • Method: GET
  • Param: callcenter_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Nhanh by ID

  • Route: /nhanh/:nhanh_id
  • Method: GET
  • Param: nhanh_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Update Nhanh by ID

  • Route : /nhanh/:nhanh_id
  • Method: PUT
  • Param : nhanh_id
  • Body : _id, createdAt, updatedAt, deleted
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Delete Nhanh by ID

  • Route: /nhanh/:nhanh_id
  • Method: DELETE
  • Param : nhanh_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get All Nhanhs

  • Route: /nhanhs
  • Method: GET
  • Return Format:
    • Success: { success: true, result }
    • Failure: { success: false, error: { message: error } }

sapo.js

Create Sapo

  • Route: /callcenter/:callcenter_id/sapo
  • Method: POST
  • Body: req.body
  • Params: callcenter_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Sapo

  • Route: /callcenter/:callcenter_id/sapo
  • Method: GET
  • Params: callcenter_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Sapo by ID

  • Route: /sapo/:sapo_id
  • Method: GET
  • Params: sapo_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Delete Sapo by ID

  • Route: /sapo/:sapo_id

  • Method: PUT

  • Params: sapo_id

  • Body: _id, createdAt, updatedAt, deleted

  • Return Format:

    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

    Delete Sapo by ID

  • Route: /sapo/:sapo_id

  • Method: DELETE

  • Params: sapo_id

  • Return Format:

    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get All Sapos

  • Route: /sapos
  • Method: GET
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

sip-provider.js

Create SIP Provider

  • Route: /sipprovider
  • Method: POST
  • Params: sapo_id
  • Body: name, tollCost, innerCost, serviceCost, phone, firm, outerCost, phoneList
  • Return Format:
    • Success: 200 { success: true, result: result }
    • Failure: 400 { success: false, error: { message: error } }

Get SIP Provider by ID

  • Route: /sipprovider/:sipprovider_id
  • Method: GET
  • Params: sipprovider_id
  • Return Format:
    • Success : 200 { success: true, result: result }
    • Failure : 400 { success: false, error: { message: error } }

Update SIP Provider by ID

  • Route: /sipprovider/:sipprovider_id
  • Method: PUT
  • Params: sipprovider_id
  • Body: field, value, name, phone, tollCost, firm, innerCost, outerCost, serviceCost, deleted
  • Return Format:
    • Success : 200 { success: true }
    • Failure : 400 { success: false, error: { message: error } }

Delete SIP Provider by ID

  • Route: /sipprovider/:sipprovider_id
  • Method: DELETE
  • Params: sipprovider_id
  • Return Format:
    • Success : 200 { success: true }
    • Failure : 400 { success: false, error: { message: error } }

Get All SIP Providers

  • Route: /sipproviders
  • Method: GET
  • Query: limit, page
  • Return Format:
    • Success: { success: true, result: result }
    • Failure: { success: false, error: { message: error } }

Post Phone List for SIP Provider

  • Route: /sipprovider/:sipprovider_id/phonelist
  • Method: POST
  • Body: phones
  • Param: sipprovider_id
  • Return Format:
    • Success: { success: true }
    • Failure: { success: false, error: { message: error } }

Delete Phone List for SIP Provider

  • Route: /sipprovider/:sipprovider_id/phonelist
  • Method: DELETE
  • Body: phones
  • Param: sipprovider_id
  • Return Format:
    • Success: { success: true }
    • Failure: { success: false, error: { message: error } }

template.js

Create Template

  • Route: /template
  • Method: POST
  • Query: versionSchema
  • Body: label, name
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Template by ID

  • Route: /template/:id
  • Method: GET
  • Param: id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Update Template by ID

  • Route: /template/:id
  • Method: PUT
  • Param: id
  • Body: name, label
  • Query: versionSchema
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get All Templates

  • Route: /templates
  • Method: GET
  • Query: filter, limit, skip
  • Return Format:
    • Success: 200 {success: true, result: templates, count}
    • Failure: 400 { success: false, error: { message: error } }

vietguy.js

Create Vietguy

  • Route: /callcenter/:callcenter_id/vietguy
  • Method: POST
  • Param: callcenter_id
  • Query: req.body
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get Vietguy

  • Route: /callcenter/:callcenter_id/vietguy
  • Method: GET
  • Param: callcenter_id
  • Return Format:
    • Success: 200 { success: true, result }
    • Failure: 400 { success: false, error: { message: error } }

Get Vietguy by ID

  • Route: /vietguy/:vietguy_id
  • Method: GET
  • Param: vietguy_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Update Vietguy by ID

  • Route: /vietguy/:vietguy_id
  • Method: PUT
  • Body: _id, createdAt, updatedAt, deleted
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Delete Vietguy by ID

  • Route: /vietguy/:vietguy_id
  • Method: DELETE
  • Param: vietguy_id
  • Return Format:
    • Success : 200 { success: true, result }
    • Failure : 400 { success: false, error: { message: error } }

Get All Vietguys

  • Route: /vietguys
  • Method: GET
  • Return Format:
    • Success: { success: true, result }
    • Failure: { success: false, error: { message: error } }